#ifndef APPLICATION_H
#define APPLICATION_H

#include <SDL.h>
#include "Source/Core/SingletonBase.h"
#include "Source/Sprite.h"

class Application
{
	DECLARE_SINGLETON(Application)
	public:

	void Start();
	void Exit(); 

	void LoadConfig();

	void Update();

	void Pause();
	void Resume();
	
	SDL_Surface* GetScreen();


	private:

	void Initialize();
	void Destroy();


	bool					m_bPaused;
	bool					m_bIsRunning;
	Uint32					m_uDt;
	Uint32					m_uLastFrameTime;
	Uint32					m_uAnimationClock;
	SDL_Window*				m_window;
	SDL_Surface*			m_screen;
	SDL_Surface*			m_logo;
	bool					m_nNumFrame;
	int						m_screenWidth;
	int						m_screenHeight;
};

#endif //APPLICATION_H